﻿/* This code is restricted under LGPL license */
namespace infoMECHANICA.NHibernateORM.CriteriaBuilder
{
    public interface ISubcriteriaProperty<T> where T : ICriteriaSource
    {
        /// <summary>
        /// Creates "EXISTS" subquery conjunction
        /// </summary>
        /// <param name="value">Criteria source object</param>
        void Exists(T value);

        /// <summary>
        /// Creates "NOT EXISTS" subquery conjunction
        /// </summary>
        /// <param name="value">Criteria source object</param>
        void NotExists(T value);
    }
}
